package validate

import (
	"gin/common"
	"github.com/Gre-Z/common/jtime"
)

type AddDictWrapper struct {
	Data AddDict `json:"data" binding:"required"`
}

type UpdateDictWrapper struct {
	Data UpdateDict `json:"data" binding:"required"`
}
type UpdateDict struct {
	Id          uint64           `json:"id" binding:"required"`
	DictId      string           `json:"dict_id"`
	Name        string           `json:"name" binding:"required"`
	Description string           `json:"description"`
	Created     jtime.TstampTime `json:"created"`
	Updated     jtime.TstampTime `json:"updated"`
}

type AddDict struct {
	Id          uint64           `json:"id"`
	DictId      string           `json:"dict_id"`
	Name        string           `json:"name" binding:"required"`
	Description string           `json:"description"`
	Created     jtime.TstampTime `json:"created"`
	Updated     jtime.TstampTime `json:"updated"`
}

type SelectDictQuery struct {
	Param common.QueryParam `json:"param" binding:"required"`
}

type PullDict struct {
}

type DeleteDictParam struct {
	Param common.Filter `json:"param" binding:"required"`
}

type DictAddByEntityCustomTags struct {
	Type   string `json:"type" binding:"required"`
	DictId uint64 `json:"dict_id" binding:"required"`
}
